#pragma once
#include "AbsRDBMSPrivoder.h"

// CMSAccessPrivoder command target

class CMSAccessPrivoder : public CAbsRDBMSPrivoder
{
public:
	virtual ~CMSAccessPrivoder();

	virtual BOOL Open(const CString& strConnectionString = CString(""));
	virtual BOOL Close();

	virtual int ExecuteSQL(CString& strSQLText, _RecordsetPtr pRecordset);
	virtual int ExecuteNonSQL(CString& strSQLText);

public:  

	static CMSAccessPrivoder *GetSingletonInstance();
	
private:  
	CMSAccessPrivoder(); 
	static CMSAccessPrivoder * m_pSingletonInstance;  
	virtual BOOL IsOpen();

protected:

	_ConnectionPtr m_pConnection;

	CString m_strConnectionString;

	CString GetConnectionString() const { return m_strConnectionString; }
	void SetConnectionString(CString& val) { m_strConnectionString = val; }

};


